package pl.com.like.sequoia.dao.admin;

import pl.com.like.sequoia.dao.IGenericDao;
import pl.com.like.sequoia.model.admin.Config;
import pl.com.like.sequoia.model.bio.enums.ConfigType;

/**
 * Get from database constants for application
 * 
 * @author Pawel Wolanski
 * 
 */
public interface IConfigDao extends IGenericDao<Config, Long> {

	/**
	 * Get from database saved constant.
	 * 
	 * @param key name of constant
	 * @return object of constant
	 */
	public abstract Config get(ConfigType key);

	/**
	 * set to database constant
	 * 
	 * @param conf value which should be saved (used only value property)
	 * @param key type of constant
	 */
	public abstract void set(Config conf, ConfigType key);

}